Parallel Programming with Logic Languages: A Survey
نویسنده
چکیده
Formal properties of logic languages are largely studied; however, their impact on the practice of software design and programming is currently minimal. In this paper we survey some interesting representatives of the family of logic languages aiming at comparing the different capabilities they offer for designing and programming parallel systems. The logic languages Prolog, Aurora, Flat Concurrent Prolog, Parlog, GHC, and DeltaProlog were chosen, because a suitable set of relevant examples has been published, mostly by the language designers themselves. A number of sample programs is used to expose and compare the languages with respect to their object oriented programming capabilities for multiprocess coordination, interprocess communication, and resource management. Special attention is devoted also to metaprogramming as well, seen as a useful technique for specifying and building the operating environments of the languages themselves. The paper ends with a discussion on positive and negative features found comparing these languages, and indicates some guidelines to be followed in the design of new logic languages.
منابع مشابه
Process-Based Parallel Logic Programming: A Survey of the Basic Issues
In the last 10 years several parallel logic programming languages based on the explicit creation of processes and the explicit interprocess communication have been developed. This paper gives an overview of some major issues that have innuenced the development of the process-based languages such as process creation, the communication medium, the sending and the reception of messages.
متن کاملLogic machines: A survey
Logic( -based) programming languages are today the center of very many research efforts. One of these languages, PROLOG (PROgramming in LOGic), is used to program expert systems, natural language processors, computer aided design systems and compilers. A parallel variant of PROLOG is suggested as the language of the Japanese Fifth Generation computer project. Parallel to these efforts, a class ...
متن کاملA Survey of Sequential and Parallel Implementation Techniques for Functional Programming Languages
This paper surveys sequential and parallel implementation techniques for functional programming languages, as well as optimizations that can improve their performance. Sequential implementations have evolved from simple interpreters to sophisticated super-combinator-based compilers, while most parallel implementations have explored a broad range of techniques. We analyze the purpose and functio...
متن کاملThread-Based Competitive Or-Parallelism
References Ertel, W.: Performance Analysis of Competitive Or-Parallel Theorem Proving. Technical report fki-162-91, Technische Universitat Munchen (1991) Shapiro, E.: The Family of Concurrent Logic Programming Languages. ACM Computing Surveys 21(3) (1989) 413–510 González, A.: Speculative Threading: Creating New Methods of Thread-Level Parallelization. Technology@Intel Magazine (2005) Moura, P....
متن کاملModed Flat Ghc for Data-parallel Programming (extended Abstract) 1 Regular Computation in Concurrent Logic Programming
Concurrent logic languages have been used mainly for the (parallel) processing of rather irregular symbolic applications. However, since concurrent logic languages are essentially general-purpose, they should be applicable to problems with regular structures and their data-parallel processing as well. This paper studies the possibility of massively parallel processing in concurrent logic progra...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Comput. Lang.
دوره 17 شماره
صفحات -
تاریخ انتشار 1992